package com.marvels.approve.process.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.marvels.approve.loan.dto.McamAcLoanApplyImageInfo;
import com.marvels.approve.process.dto.LaAttachAtmeTypeViewDTO;
import com.marvels.approve.process.dto.LaAttachmentDTO;
import com.marvels.approve.process.dto.SystemParamDTO;

public interface AttachmentInfoDao {

	public List<LaAttachmentDTO> selectAttachmentInf(@Param("atmtType") String [] atmtType,@Param("loanId") String loanId);
	
	/**
	 * 根据附件类型获取附件信息
	 * @param atmtTypes
	 * @param loanId
	 * @return
	 */
	public List<LaAttachmentDTO> getAttachmentsByAttachmentTypes(@Param("atmtTypes") List<LaAttachAtmeTypeViewDTO> atmtTypes,@Param("loanId") String loanId);

	public Long  getCompactSeq();
	
	public List<SystemParamDTO> selectParamConfig(SystemParamDTO dto);
	
	public int insertAttachmentInfo(McamAcLoanApplyImageInfo dto);
	
	public int updateAttachmentInfo(McamAcLoanApplyImageInfo dto);
	/**
	 * 更新指定类型的附件为失效
	 * @param dto
	 * @return
	 */
	public int updateAttachmentStatus(McamAcLoanApplyImageInfo dto);
	
	/**
	 * 根据id获取附件信息
	 * @param id
	 * @return
	 */
	public LaAttachmentDTO selectAttachmentById(Long id);
	
	
	/**根据loanId和类型查询附件
	 * @author 娄凯琦
	 * @date 2018年9月27日  
	 * @param mcamAcLoanApplyImageInfo
	 * @return
	 */
	public List<LaAttachmentDTO> selectByLoanIdAndType(LaAttachmentDTO laAttachmentDTO);
	
}
